package com.leyou.order.controller;

import com.leyou.order.service.TbOrderService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.Map;

@Slf4j
@RestController
@RequestMapping("/pay")
public class PayController {

    @Autowired
    private TbOrderService tbOrderService;
    /**
     * 微信支付通知  服务端 到 服务端的请求
     * consumes  相当于 request请求中的Content-Type
     * produces  相当于  Accept  微信支付需要的数据类型
     * @param reqData
     * @return
     */
    @PostMapping(value = "/wx/notify",produces = "application/xml")
    public Map<String,String> wxNotify(@RequestBody Map<String,String> reqData){
        log.info("【微信支付结果通知】，内容:{}",reqData);

//        获取到微信支付通知，如果支付成功，修改订单的状态
//        状态从未支付 改成 已支付
        tbOrderService.updateOrderStatus(reqData);

//      微信支付返回内容
        Map<String,String> result = new HashMap<>();
        result.put("return_code","SUCCESS");
        result.put("return_msg","OK");
        return result;
    }
}
